home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
007a
/
ttpmp11.zip
/
TTPMP.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1991-08-28
|
5KB
|
127 lines
Program TriTelPersonalMailPager;
Uses ttprocs,dos,crt;
VAR
ConferenceFile:FILE of ConferenceType;
ConferenceRecord:ConferenceType;
ConferenceLoop:INTEGER;
MessagePointerFile:FILE of MessagePointerType;
MessagePointerRecord:MessagePointerType;
UserDataFile:FILE of UserDataType;
UserRecord:UserDataType;
UserNumber:INTEGER;
WorkString,
WorkFileName:STRING;
LogOnFileName:STRING;
WorkTextFile:TEXT;
FirstConfFlag,
FirstMsgFlag:BOOLEAN;
begin {Main Program}
IF ParamCount = 1 THEN
begin
ClrScr;
Writeln('Scanning conferences for private mail....');
ASSIGN(UserDataFile,ParamStr(1)+'\WORK\USERS.DAT');
ASSIGN(ConferenceFile,ParamStr(1)+'\WORK\MCONF.DAT');
IF NOT FileExists(ParamStr(1)+'\WORK\USERS.DAT') THEN
begin
writeln('You have given an incorrect path to your TriTel directory.');
writeln('Please fix this problem and continue.');
HALT(1);
end;
ASSIGN(WorkTextFile,ParamStr(1)+'\DISPLAY\TEMPFILE.TMP');
RESET(UserDataFile);
UserNumber:=1;
FirstConfFlag:=TRUE;
FirstMsgFlag:=TRUE;
WHILE NOT EOF(UserDataFile) DO
begin
ConferenceLoop:=1;
RESET(ConferenceFile);
READ(UserDataFile,UserRecord);
WHILE NOT EOF(ConferenceFile) DO
begin
READ(ConferenceFile,ConferenceRecord);
STR(ConferenceLoop,WorkFileName);
WHILE LENGTH(WorkFileName) < 4 DO WorkFileName:='0'+WorkFileName;
WorkFileName:=ParamStr(1)+'\WORK\M'+WorkFileName+'.PTR';
IF FileExists(WorkFileName) THEN
begin
ASSIGN(MessagePointerFile,WorkFileName);
RESET(MessagePointerFile);
WHILE NOT EOF(MessagePointerFile) DO
begin
READ(MessagePointerFile,MessagePointerRecord);
IF (MessagePointerRecord.MessageToName=UserRecord.UserName)
AND (MessagePointerRecord.RCVDFlag <> 1)
AND (MessagePointerRecord.DeletedFlag <> 1) THEN
begin
IF FirstConfFlag THEN
begin
REWRITE(WorkTextFile);
WRITELN(WorkTextFile,'>> TriTel Personal Mail Pager <<');
WRITELN(WorkTextFile);
WRITELN(WorkTextFile);
WRITELN(WorkTextFile,' YOU HAVE PERSONAL MAIL!');
WRITELN(WorkTextFile,' * = private mail');
CLOSE(WorkTextFile);
FirstConfFlag:=FALSE;
end;
IF FirstMsgFlag THEN
begin
APPEND(WorkTextFile);
WRITELN(WorkTextFile,ConferenceRecord.ConfDescription);
WRITE(WorkTextFile,' Message #s: ');
CLOSE(WorkTextFile);
FirstMsgFlag:=FALSE;
end;
IF MessagePointerRecord.PrivateFlag = 1 THEN
begin
APPEND(WorkTextFile);
WRITE(WorkTextFile,'*');
CLOSE(WorkTextFile);
end;
STR(MessagePointerRecord.MessageNumber,WorkString);
APPEND(WorkTextFile);
WRITE(WorkTextFile,WorkString,' ');
CLOSE(WorkTextFile);
end
end;
IF NOT FirstMsgFlag THEN
begin
APPEND(WorkTextFile);
WRITELN(WorkTextFile);
WRITELN(WorkTextFile);
CLOSE(WorkTextFile);
FirstMsgFlag:=TRUE;
end;
CLOSE(MessagePointerFile);
ConferenceLoop:=ConferenceLoop+1;
end;
end;
CLOSE(ConferenceFile);
IF NOT FirstConfFlag THEN
begin
APPEND(WorkTextFile);
WRITELN(WorkTextFile);
WRITELN(WorkTextFile);
WRITELN(WorkTextFile,'@MORE@');
CLOSE(WorkTextFile);
STR(UserNumber,LogOnFileName);
LogOnFileName:=ParamStr(1)+'\DISPLAY\'+LogOnFileName;
AddToPersonalLogOn(LogOnFileName,WorkTextFile);
FirstConfFlag:=TRUE;
end;
UserNumber:=UserNumber+1;
end;
CLOSE(UserDataFile);
end
ELSE
begin
writeln('Please include the path to your TriTel directory in the command line');
HALT(1);
end;
end. {Main Program}